package com.xci.core.annotation;

import java.lang.annotation.*;

/**
 * 取前几条数据注解
 */
@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface Top {
    /**
     * 取得数量,默认为1
     */
    int count() default 1;

    /**
     * 是否启用排序
     */
    boolean allowSort() default true;
    
    /**
     * 默认排序字段
     */
    String defaultSortName() default "";

    /**
     * 默认排序方式
     */
    String defaultSortDir() default "";

    /**
     * 排序字段名称转换方式 0无变化 1驼峰转下划线 2下划线转驼峰
     */
    int sortNameConvertType() default 1;

    /**
     * 排序字段名映射转换,格式:接收字段名,转换后字段名
     */
    String[] sortNameMap() default {};

    /**
     * 排序字段名称
     */
    String sortNameField() default "sortName";

    /**
     * 排序方式字段名称
     */
    String sortDirField() default "sortDir";
}